﻿using BootstrapBlazor.Components;
using System.ComponentModel.DataAnnotations;

namespace TrackSystem.Entities.Dtos.Sensor
{
    public class SensorForCreatedDto
    {
        /// <summary>
        /// 通道名称
        /// </summary>
        [Required]
        [Display(Name = "名称")]
        [AutoGenerateColumn(Order = 10, Filterable = true, Searchable = true)]
        public required string Name { get; set; }

        /// <summary>
        /// 通道描述
        /// </summary>
        [Display(Name = "描述")]
        [AutoGenerateColumn(Order = 20, Filterable = true, Searchable = true)]
        public string? Description { get; set; }

        /// <summary>
        /// 站地址
        /// </summary>
        [Display(Name = "站地址")]
        [AutoGenerateColumn(Order = 30)]
        public int Station { get; set; }

        /// <summary>
        /// 只读存储器起始地址
        /// </summary>
        [Display(Name = "只读起始地址")]
        [AutoGenerateColumn(Order = 40)]
        public int RO_Address { get; set; }

        /// <summary>
        /// 只读存储器长度
        /// </summary>
        [AutoGenerateColumn(Order = 50)]
        [Display(Name = "只读长度")]
        public int RO_Length { get; set; }

        /// <summary>
        /// 读写存储器起始地址
        /// </summary>
        [AutoGenerateColumn(Order = 60)]
        [Display(Name = "读写起始地址")]
        public int RW_Address { get; set; }

        /// <summary>
        /// 读写存储器长度
        /// </summary>
        [AutoGenerateColumn(Order = 70)]
        [Display(Name = "读写长度")]
        public int RW_Length { get; set; }

        /// <summary>
        /// 初始化是否使能
        /// </summary>
        [Display(Name = "启动使能")]
        [AutoGenerateColumn(Order = 80)]
        public bool Eabled { get; set; }

        /// <summary>
        /// 初始化是否使能
        /// </summary>
        [Display(Name = "端口ID")]
        [AutoGenerateColumn(Order = 90)]
        public int channelID { get; set; }

        /// <summary>
        /// 初始化是否使能
        /// </summary>
        [Display(Name = "设备ID")]
        [AutoGenerateColumn(Order = 95)]
        public int equipId { get; set; }


    }
}
